#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    char s[500];
    gets(s);
    int i;
    char a[10][5]={{'0',' '},{'1',',','.','?','!' },{'2','A','B','C'},{'3','D','E','F'},
                    {'4','G','H','I'},{'5','J','K','L'},{'6','M','N','O'},
                    {'7','P','Q','R','S'},{'8','T','U','V'},{'9','W','X','Y','Z'}
                    };
    int len = strlen(s);
    int count = 0;
    for(i=0;i<len;i++)
    {
        if(s[i]!=' ' && s[i]!='\0')
        count++;
        if( s[i+1] == ' ' || s[i+1]=='\0') {
             switch(s[i])
            {
                 case '0':
                    count = count%2;
                    count == 0?   printf("%c",a[0][1] ):  printf("%c",a[0][count-1]);
                    break;
                case '1':
                    count = count%5;
                    count == 0?   printf("%c",a[1][5] ):  printf("%c",a[1][count-1]);
                     break;
                case '2':
                    count = count%4;
                    count == 0?   printf("%c",a[2][3] ):  printf("%c",a[2][count-1]);
                     break;
                case '3':
                    count = count%4;
                    count == 0?   printf("%c",a[3][3] ):  printf("%c",a[3][count-1]);
                     break;
                case '4':
                    count = count%4;
                    count == 0?   printf("%c",a[4][3] ):  printf("%c",a[4][count-1]);
                     break;
                case '5':
                    count = count%4;
                    count == 0?   printf("%c",a[5][3] ):  printf("%c",a[5][count-1]);
                     break;
                 case '6':
                    count = count%4;
                    count == 0?   printf("%c",a[6][3] ):  printf("%c",a[6][count-1]);
                     break;
                 case '7':
                    count = count%4;
                    count == 0?   printf("%c",a[7][3] ):  printf("%c",a[7][count-1]);
                     break;
                  case '8':
                    count = count%4;
                    count == 0?   printf("%c",a[8][3] ):  printf("%c",a[8][count-1]);
                     break;
                  case '9':
                    count = count%5;
                    count == 0?   printf("%c",a[9][4] ):  printf("%c",a[9][count-1]);
                     break;

            }

            count = 0;
        }
    }
    return 0;
}
